package Risk.Reseau;

import java.net.*;
import java.io.*;

/**
 * Classe réalisant l'envoie des messages vers le serveur
 * @version 1.0
 * @date 29/12/2007
 * @author Sebastien Depoix
 */
public class Client {

    private Socket socket;
    private DataOutputStream dosEnSortie;
    
    /**
     * Constructeur creant une connexion avec le serveur
     * 
     * @param hote Adresse du serveur
     * @param port Numero de port du serveur
     */
    public Client(String hote, int port) {
        try {
            socket = new Socket(hote, port);
            dosEnSortie = new DataOutputStream(socket.getOutputStream());
        } 
        catch (IOException e) {
            System.out.println("Pb d'etablissement de connexion client");
            e.printStackTrace();
        }
    }
    
    /**
     * Envoie le message passe en parametre au serveur
     * @param s Le message a envoyer
     */
    synchronized void envoyerAuServeur(String s) {
        try {
            dosEnSortie.writeInt(s.length());
            dosEnSortie.writeBytes(s);
            dosEnSortie.flush();
        } 
        catch (Exception e) {
            System.out.println("Probleme d'envoi au serveur");
            e.printStackTrace();
        }
    }
}
